package geste.service;

import geste.dao.TipoUsuarioDAO;
import geste.vo.Tipo;

import java.util.Collection;

import org.hibernate.HibernateException;

public class TipoUsuarioServiceImpl implements TipoUsuarioService {
	
	private TipoUsuarioDAO<Tipo> tipoUsuarioDAO;

	public TipoUsuarioDAO<Tipo> getTipoUsuarioDAO() {
		return tipoUsuarioDAO;
	}

	public void setTipoUsuarioDAO(TipoUsuarioDAO<Tipo> tipoUsuarioDAO) {
		this.tipoUsuarioDAO = tipoUsuarioDAO;
	}

	@Override
	public void incluir(Tipo tipo)  throws HibernateException{
		if(!tipoUsuarioDAO.equals(tipo)){
			tipoUsuarioDAO.incluir(tipo);
		}
	}

	@Override
	public Collection<Tipo> listar(Tipo tipo)  throws HibernateException{
		return tipoUsuarioDAO.listar(tipo);
	}

	@Override
	public void alterar(Tipo tipo) throws HibernateException {
		tipoUsuarioDAO.alterar(tipo);
		
	}

	@Override
	public void remover(Tipo tipo) throws HibernateException{
		tipoUsuarioDAO.remover(tipo.getId());
	}

	@Override
	public Tipo consultar(Tipo tipo)  throws HibernateException{
		return tipoUsuarioDAO.consultar(tipo);
	}

}
